home *** CD-ROM | disk | FTP | other *** search
/ Aminet 47 / Aminet 47 (2002)(GTI - Schatztruhe)[Feb 2002].iso / Aminet / dev / lang / AmigaTalk.lha / intuition / BitMap.st next >
Text File  |  2000-09-27  |  2KB  |  93 lines

  1. "---------------------------------------------------------------"
  2. " BitMap Class implements control of Amiga BitMaps.             "
  3. " ------------------------------------------------------------- "
  4. " Valid values for Flags are:"
  5. "    BMF_CLEAR       = 1     " 
  6. "    BMF_DISPLAYABLE = 2     " 
  7. "    BMF_INTERLEAVED = 4     "
  8. "    BMF_STANDARD    = 8     "
  9. "    BMF_MINPLANES   = 16    "
  10.  
  11. " Test file:
  12.   bmap <- BitMap new
  13.  
  14.   bmap setBitMapWidth: 540
  15.   bmap setBitMapHeight: 90
  16.   bmap setBitMapDepth:   8
  17.   bmap setBitMapFlags:  14 
  18.   bmap makeBitMap
  19.   ...
  20.   bmap remove
  21. "
  22.  
  23. "---------------------------------------------------------------"
  24.  
  25. Class BitMap :Glyph  ! address width height depth flags !
  26. [
  27.    remove
  28.       <primitive 189 0 address>
  29. |
  30.    getBitMapWidth
  31.       ^ width <- <primitive 189 2 0 address>
  32. |
  33.    getBitMapHeight
  34.       ^ height <- <primitive 189 2 1 address>
  35. |
  36.    getBitMapFlags
  37.       ^ flags <- <primitive 189 2 2 address>
  38. |
  39.    getBitMapDepth
  40.       ^ depth <- <primitive 189 2 3 address>
  41. |
  42.    changeBitMapWidth: newWidth
  43.       <primitive 189 3 0 newWidth address>.
  44.       width <- newWidth
  45. |
  46.    changeBitMapHeight: newHeight
  47.       <primitive 189 3 1 newHeight address>.
  48.       height <- newHeight
  49. |
  50.    changeBitMapFlags: newFlags
  51.       <primitive 189 3 2 newFlags address>.
  52.       flags <- newFlags
  53. |
  54.    changeBitMapDepth: newDepth
  55.       <primitive 189 3 3 newDepth address>.
  56.       depth <- newDepth
  57. |
  58.    readBitMapFile: bitMapFileName
  59.       <primitive 189 4 bitMapFileName address>.
  60.  
  61.       width  <- <primitive 189 2 0 address>.
  62.       height <- <primitive 189 2 1 address>.
  63.       flags  <- <primitive 189 2 2 address>.
  64.       depth  <- <primitive 189 2 3 address>.
  65.  
  66.       ^ self "????"
  67. |
  68.    writeBitMapFile: bitMapFileName
  69.       <primitive 189 5 bitMapFileName address>
  70. |
  71.    grabScreenPiece: filename x: xval y: yval w: wval h: hval
  72.       <primitive 189 6 filename xval yval wval hval>
  73. |
  74.    setBitMapWidth: newWidth
  75.       width <- newWidth
  76. |
  77.    setBitMapHeight: newHeight
  78.       height <- newHeight
  79. |
  80.    setBitMapFlags: newFlags
  81.       flags <- newFlags
  82. |
  83.    setBitMapDepth: newDepth
  84.       depth <- newDepth
  85. |
  86.    makeBitMap
  87.       address <- <primitive 189 1 width height depth>.
  88.       ^ self
  89. |
  90.    new
  91.       ^ self
  92. ]
  93.